Communications between various computers can be partitioned into different abstraction layers. For example, according to the open systems interconnection (OSI) model, there are seven abstraction layers: the physical layer, the data link layer (also known as the hardware link layer), the network layer, the transport layer, the session layer, the presentation layer, and the application layer.
Conventionally, the security of a network is established at the application layer or the presentation layer. For example, some operating systems include software based firewalls to protect against Internet threats. However, a user or an application with access to the operating system can compromise the operation of the operating system and consequently disable any software firewalls, leaving the computer system vulnerable to external threats.